Skip to content

chore(release): prepare dev promotion to main - #771

Draft
djm81 wants to merge 125 commits into
mainfrom
dev
Draft

djm81 wants to merge 125 commits into
mainfrom
dev

Conversation

@djm81

@djm81 djm81 commented Oct 16, 2026 •

Copy link
Copy Markdown
Collaborator

Prepare the current development changes for promotion to main. This PR is a draft and is not ready to merge or publish.

The captured comparison is dev 729a53bd against main 5262efb0. It includes #719's signed path-security fix, #743's workflow planning, and the earlier dependency consolidation. #751 is still open and is not included in dev.

Blocking prerequisites remain.

  • MCP 1.29.0 fails CVE-2026-59951 / GHSA-84m7-p3x7-pcfv. The maintainer fixes the 1.x line in 1.30.0. Frozen Semgrep 1.179.0 and latest 1.181.0 both require MCP 1.29.0 exactly. A fresh normal UV resolution with Semgrep 1.181.0 and MCP >=1.30.0,<2 is unsatisfiable. No waiver, override, exclusion, or gate change is included. Advisory, upstream metadata, tracked blocker.
  • docs: verify agentic SDLC roadmap and follow-ups #751's supported metadata repair passed all three Requirements checks and its exact approved authority grant. Its subsequent signed planning-review fix is ec702e40; all three current-head Requirements checks pass in run 38960072326. The owner approved its exact new authority grant, and Trusted Requirements Authority passes in run 38960072374 attempt 2. Other current-head hosted checks remain required. The review thread is resolved. Human disposition remains required.
  • GitHub reports this release branch behind main by one earlier release commit. Resolve the protected ancestry requirement before promotion. The reverse comparison shows no source-file delta for that commit.
  • Complete current-head review, strict signatures, frozen audit, dependency trust, and every required integration. Historical green checks do not establish release readiness.

The named targets of #762, #764, #765, and #766 are covered in dev but still absent from main. Their incidental Ruby upgrades are not duplicates. Keep those PRs open until verified promotion or maintainer disposition. #763's JSON 3 migration is excluded because it downgrades Jekyll 4.4.1 to 4.3.4; dev retains JSON >=2.21.2,<3.

No merge, tag, package publication, or trust-policy relaxation is included. Closing this draft reverses the release preparation without changing source branches.

Refs #740. Recover C14/C15 planning and rescope dependencies.

Planning-only exception: local cli-block2 rejects six changes with unsupported-sidecar-schema. Strict OpenSpec validation passed for all 12 touched changes. No runtime files changed; remote checks and merge protections remain unchanged.
Clarify trusted C14 execution and compatible publication, move governance first, retire the superseded R07 queue, and make optional assurance boundaries explicit.

Validation: eight strict OpenSpec checks, scoped Markdown lint and diff checks pass. Planning-only cli-block2 exception retained: existing Requirements gate rejects six missing/unsupported sidecars. Remote checks and runtime policy are unchanged.
Triage PR #741 follow-up findings: regenerate trusted context per job, map effective governance gates, and remove stale optional blocker wording.

Planning only. Strict validation passes for all three touched changes. Reuse the disclosed SKIP=cli-block2 exception for the unchanged legacy evidence gate; runtime enforcement remains unchanged.
Place optional-policy qualifiers in normative preflight requirements and ordinary-delivery scenarios so archival cannot discard their scope.

Planning only; three strict OpenSpec validations pass. Reuse the disclosed SKIP=cli-block2 exception; runtime policy remains unchanged.
Refresh current core ownership and actual prerequisites when implementation starts; the recovered historical check cannot establish future readiness. Planning-only hook exception: SKIP=cli-block2.
Replace inherited C14 blocking contracts when C15 adopts schema 1.7. Keep reviewed implementation slices before trusted pilot and coordinated cutover.

Strict changed-proposal validation passes; sequential C14/C15 merge projection succeeds. Existing canonical Purpose placeholders remain. Planning-only SKIP=cli-block2 exception is unchanged.
Separate historical checks from current planning validation without claiming implementation or CI readiness. Disclosed planning-only SKIP=cli-block2 remains unchanged.
Keep the existing ordinary-pass boundary explicit in R09, including non-strict XPASS and empty wasxfail metadata. Planning only; disclosed SKIP=cli-block2 remains unchanged.
Put reviewed integration and protected publication before trusted enforcement and release handoffs. Refresh C14 readiness and remove remaining optional-preflight dependency and authored-ledger contradictions from active plans.

Six affected OpenSpec changes validate strictly; existing unrelated archive-target notices remain. Reuse the disclosed planning-only SKIP=cli-block2 exception; runtime policy unchanged.
Add paired workflow proposal for #742/#483 and align R09 current-run consumer boundaries, ownership and delivery dependencies.

Validation: all 13 active PR changes pass strict OpenSpec; scoped Markdown, metadata readback and whitespace pass. Normal Block2 reports unsupported-sidecar-schema for R09 and workflow; retain the existing planning-only SKIP=cli-block2 exception. Runtime and remote required gates are unchanged.
Address reviewed C15 trusted activation and fresh worktree setup, exact preflight dogfood identities, and R09 matrix/retry uniqueness plus duplicate rejection.

Three affected changes pass strict OpenSpec and scoped Markdown/whitespace. Existing planning-only cli-block2 exception retained; no runtime or remote gate changes.
Make current execution, optional history and producer status boundaries
normative. Preserve additive serialization and producer ownership; align
archive compatibility and inventory without implementing runtime code.

Strict OpenSpec: all 13 touched active changes pass. Scoped Markdown and
whitespace pass. Reuse the owner-authorized planning-only Block2 skip;
legacy Requirements sidecar failure remains disclosed, not a passing gate.
Move workflow01 and its integration sections out of the lean-delivery PR while retaining generic current-run consumer boundaries and later review corrections. No history rewrite; planning-only disclosed SKIP=cli-block2 remains unchanged.
Clarify shared current execution identities from existing metadata, conditional preflight instructions, rollback acceptance and native archival. No new receipt protocol; planning-only disclosed SKIP=cli-block2 remains unchanged.
Advance the canonical protected green-check requirement to schema1.7 while preserving C14 trust and scenario coverage. Sequential C14/C15 merge projection passes. Planning-only disclosed SKIP=cli-block2 remains unchanged.
Validate the signed module against the resulting core version and repeat affected compatibility checks if either identity changes before publication. Planning-only disclosed SKIP=cli-block2 remains unchanged.
## Description

Planning-only PRs that update multiple active OpenSpec changes pass the
producer's classification but fail implementation review selection in
the fresh consumer and final verifier. Five condition changes keep
implementation approval records out of planned validation in all three
stages. Every selected source is still validated, and independently
regenerated plans must match.

Implementation scope restrictions, execution/provenance checks,
exact-head trusted authority and promotion verification remain intact.
No CLI/API, signed module payload or dependency changes; no R09
activation.

Fixes #745. Unblocks planning integration of #741;
independent of the R09 policy redesign.

OpenSpec: `fix-planning-evidence-multichange`.

## Type of Change

- [x] Bug fix
- [x] Test enhancement

## Validation

- Actual workflow shell regression tests: two planning failures before
implementation; existing implementation-scope protection passed.
- Existing gate accepted genuine RED evidence at test-only commit
`3e9a4ada2eed2a6a60427c3d5e517f33c5c92c79`, [run
35569603411](https://github.com/nold-ai/specfact-cli/actions/runs/35569603411).
The passing preservation test remains in the regular regression suite,
not the failing-proof selection.
- All 29 affected workflow tests pass after the fix, including promotion
verification coverage.
- Strict OpenSpec, reproducible-delivery validation, lock consistency
and BasedPyright in the worktree environment pass (zero type errors;
existing warnings remain).
- Normal signed-commit hooks pass without exceptions, using the
supported separate documentation and Requirements fixtures.
- Independent plan and implementation trust review found no remaining
blocking issues.

Remote checks remain authoritative. Merge this prerequisite only after
approval and required checks; then refresh #741 against dev so its diff
remains planning-only. Reverting the workflow commit restores the
previous selection behavior.
Current Requirements delivery demands retained development history
beyond current-run validation. This planning PR defines the R09
minimal-evidence migration, preserves independent producer outcomes, and
reconciles optional-assurance dependencies plus core C14/C15 planning.

Refs #740, #662, #679 and #680. Paired modules story:
nold-ai/specfact-cli-modules#481; paired planning PR:
nold-ai/specfact-cli-modules#482. All implementation stories remain
open. Changes are planning documents only; executable code, runtime
gates, signed assets, versions and remote enforcement are unchanged.

The plan retains useful regression tests, current-candidate outcomes,
trusted CI provenance, signatures, independent security and review. It
removes mandatory historical RED ledgers, approval-comment loops,
duplicate evidence suites and optional-preflight prerequisites from
ordinary delivery. Current reconciliation needs no prior session receipt
and does not grant local state protected authority.

Delivery proceeds through reviewed governance preparation, signed module
publication, reviewed core adoption/trusted pilot and coordinated
repository/organization policy cutover with rollback. C14/C15 readiness,
schema migration and trusted integration remain explicit. Harness
workflow proposals are being separated into their own issue-linked PRs;
they are not part of this PR's scope.

Validation: scoped strict OpenSpec validations, Markdown, whitespace and
applicable signature/version hooks pass across the review corrections.
Existing canonical Purpose placeholders and unrelated archival-target
notices are recorded rather than claimed repaired. No runtime
implementation or full behavioral test completion is claimed.

Known limitation: the legacy Requirements producer rejects six planning
sources as unsupported-sidecar-schema; dependent execution lacks proof
artifacts, and the organization authority rejects its current policy
check. The previously disclosed planning-only SKIP=cli-block2 exception
is retained locally; downstream Block2 review/contracts did not run. No
Requirements/authority CI PASS is claimed, no evidence sidecars or
transcripts were manufactured, and remote required checks/protections
remain unchanged.
Refs #742.

Planning artifacts only; preserve assurance, ownership, signed compatibility and unchecked implementation/trial tasks.
Refs #742.

Planning artifacts only; preserve assurance, ownership, signed compatibility and unchecked implementation/trial tasks.
Refs #742.

Planning artifacts only; preserve assurance, ownership, signed compatibility and unchecked implementation/trial tasks.
Refs #747 and #755.

Focused security and fixture slice; preserve original #748, gates, release/module identity and planned workflow runtime scope. Authored RED and final repair are distinct phases.
Refs #747 and #755.

Focused security and fixture slice; preserve original #748, gates, release/module identity and planned workflow runtime scope. Authored RED and final repair are distinct phases.
Core PR #755 fails on unchanged dev dependencies and a versioning
fixture that stages Git metadata. This owner-authorized slice of #747
upgrades the five necessary frozen packages, restricts fixture staging
to generated projects, and isolates the smoke fallback from inherited
unverified seed caches. The Semgrep sentinel follows the lock while
retaining its security floor, MCP and no-waiver checks.

Frozen updates: PyJWT 2.15.1, urllib3 2.8.0, virtualenv 21.11.0, Semgrep
1.179.0 and python-discovery 1.6.0. Module/release identity, verifier
dependencies, workflows, gate policy and trust exceptions are unchanged.

**Signed final head:** `9ed629582d5bdfe4a93610178b95772f58a1c2a3`, tree
`982b8ffe2f2e56c56f46340dff9328c8d090fdfd`. The isolated JWT probe tests
the hash-pinned delivery wheel in a separate temporary target, retaining
the trusted verifier's base environment. Frozen parent assertions verify
its bound version, unchanged caller options and expiry on reuse. The
cache probe preserves its process-boundary assertions.

**Authenticated RED:** authored head
`0f9d114be7e4fd70083d0c1a101590c2ab9ca06d`, Requirements run
[37896570864](https://github.com/nold-ai/specfact-cli/actions/runs/37896570864),
artifact 11600054315, ZIP byte digest
`sha256:b30ddc50df79e0ceb1465baaec8f3ab8872f60e5b4f9c4d458c470651d4befa0`.
The actual report passes RED with no findings. The selected tests,
mapping and acceptance record remain unchanged through final
publication. Earlier rejected snapshots are retained in TDD_EVIDENCE.md
and are not substituted for this proof.

**Validation:** published-head provenance and local native final
reconciliation pass (verified maturity, zero findings). Twenty-five
scoped tests pass. Ruff check/format, project BasedPyright (zero
errors), scoped Markdown/YAML, selected strict OpenSpec, coherent export
and lock checks pass. Self-review has zero blocking findings, with
explicit dispositions for two baseline warnings, four unchanged AST
suggestions and one probe-readability advisory. The unchanged reviewed
graph previously passed both advisory gates, trust/licenses and fifteen
security/control probes; current hosted gates and full-suite/matrix
results remain independently required.

All-change OpenSpec retains the known unrelated governance delta failure
(39/40). Prior broad local runs had environment failures and nested
Hatch graph drift; those results are not frozen delivery proof. Artifact
screening retains provenance-verification and optional Semgrep Pro
limitations. Upgrading cannot sanitize external previously compromised
Hatch/user caches; this change does not purge shared caches.

Current-head hosted final execution, exact-head human authority and
completed required reviews remain necessary before integration. Refs
#747 and #755. Original #748's broader consolidation stays open and
unchanged. This slice does not close #747, archive the broad change or
implement planned workflow runtime. After integration, refresh the
internal wiki's merged/dependency status and rebuild its graph; its
mirror was updated and rebuilt on the authoring host on 9 October 2026.
djm81 added 16 commits October 20, 2026 21:57
## Summary

Remove the rejected Semgrep fork producer, candidate workflow, runtime
patches and fork-specific tests/plans. Retain official Semgrep 1.179.0
with MCP 1.29.0. Latest official Semgrep 1.182.0 still pins MCP 1.29.0,
and normal resolution with patched MCP 1.30.0 fails.

Retain the certifi 2026.10.19 correction and core 0.55.11 preparation.
Per the owner's 2026-10-21 direction, add one reviewed MCP 1.29.0
exception for CVE-2026-59951 / GHSA-84m7-p3x7-pcfv through 2026-11-04
inclusive. The strict audit visibly reports WAIVED for that finding
only. Other findings, versions, skipped subjects and expiry remain
blocking. MCP remains vulnerable; ordinary reviewed automation does not
start its server. Do not expose a stateful Streamable HTTP MCP server
during the exception. Review upstream weekly and remove the exception
after a verified compatible official fix.

## Validation

- 54 focused security tests pass, including real frozen/installed
certificate checks and exact exception/expiry rejection.
- All three strict frozen audits pass with the single authorized MCP
waiver.
- Required local type/lint/YAML/contract/license/Bandit gates pass.
Official Semgrep SAST reports zero findings.
- Independent mapping and final code reviews accept the corrected scope.
No introduced SpecFact review error or warning remains; existing
whole-file findings have explicit dispositions.
- Frozen regeneration, reproducibility, version synchronization and
strict OpenSpec validation pass. Scoped smart-test passes 53 selected
unit tests; this is not full-suite coverage evidence.

## Boundaries

All required CI and exact-head human authority remain enforced. Signing
is CI/CD only. No fork package/publisher, merge, release, promotion or
related-PR closure is authorized by this change.

The runtime source delta against dev changes only version strings. A
later dependency-only hotfix release must start from actual published
v0.55.4 commit d579970 and exclude
unreleased dev runtime changes. This PR does not promote all dev
commits.

Issue #780 tracks implementation under #747. Baseline Z3 issue #783
remains separate. Earlier candidate results are historical, unadopted
evidence in Git; they do not supply acceptance or publication authority
for this scope.

## Current protected status

At head 0262dbe, native Security Audit
and Trusted Requirements Authority pass. Other native checks have
completed successfully or are skipped. The three Requirements contexts
remain red on `prior-red-proof-invalid`, despite eleven passing selected
tests. Exact parameter collection is fixed.

The separately authorized [draft policy contract
PR](nold-ai/.github#4) records the current
immutable evidence and a distinct proposed late-cycle admission class.
It is documentation only, issues no admission, and changes no executable
policy. Implementation, authenticated transport, distinct human
admission approval and core consumer integration remain unperformed. No
policy deployment or merge is authorized.
@djm81 djm81 self-assigned this Oct 21, 2026
@djm81 djm81 added the dependencies Dependency resolution and management label Oct 21, 2026
@github-actions

Copy link
Copy Markdown
Contributor

SpecFact CLI Validation Report

✅ All validations passed!
Duration: 26.41s
Checks: 4 total (3 passed) (1 skipped)

@djm81 djm81 moved this from Todo to In Progress in SpecFact CLI Oct 21, 2026
djm81 added 7 commits October 21, 2026 12:38
PR #782 merged with missing historical Requirements provenance. This
separately requested follow-up enforces an explicit, revision-bound
human admission at producer, fresh execution and final verdict. Raw
native failure remains unchanged, and independent Code Review and all CI
stay required.

- Call the immutable live policy independently at each boundary. Audit
sidecars grant no later authority. An isolated CI job attests the
original native artifact.
- Preserve the eleven dependency cases and three CI controls, with all
fourteen selectors and protected mapping digests unchanged.
- Restore all three current-run evidence transfers by exact artifact ID.
The pinned download action discarded a valid requested rerun ID through
name deduplication. One shared workflow program checks
repository/run/head/name, SHA-256, bounded HTTPS transfer and inert ZIP
extraction before exclusive publication. Existing context survives.

Policy [nold-ai/.github#4](nold-ai/.github#4)
was owner-approved and deployed. Genuine fresh origin verification then
exposed a literal synthetic-merge ID refusal despite identical signed
tree/ancestry. Reviewed correction
[nold-ai/.github#5](nold-ai/.github#5) has green
CI and 264 passing policy tests. Core pins its immutable revision, but
the candidate remains inactive pending explicit owner approval for
protected deployment. Its new path requires both valid signed
identities, the exact reviewed full tree and identical ordered base/head
parents, while retaining actual source attestation. Fresh exact
authority and separate missing-RED admission follow deployed-policy
verification. Previous grants cannot transfer.

Validation includes 179 policy tests, 114 focused core tests,
independent security review with eight additional hostile probe groups,
genuine live exact-ID transfers through the final program, and normal
commit hooks. The required local smart-test gate passed its 111 selected
tests. Full lint, YAML, pinned workflow lint, strict OpenSpec and
unchanged mapping/plan checks pass. New test code has zero review
findings; seven precisely scoped diagnostics in unchanged existing
functions have independently verified baseline exceptions documented in
[TDD
evidence](https://github.com/nold-ai/specfact-cli/blob/c73a9d6d3809ac763edb4eeacb7ad4e2d082e38d/openspec/changes/isolate-semgrep-security-runtime/TDD_EVIDENCE.md).
Final-head CI is running.

Scope is CI, tests and issue #780 specifications. Official packages,
certifi 2026.10.19, core 0.55.11 and the reviewed MCP exception through
4 November 2026 remain as merged. Signing and attestation generation are
CI/CD-only. Core merging and any further protected deployment require
owner approval.

A future dependency-only release starts from published v0.55.4 and
excludes unrelated dev runtime changes. This PR publishes no release.
@github-actions

Copy link
Copy Markdown
Contributor

SpecFact CLI Validation Report

✅ All validations passed!
Duration: 26.19s
Checks: 4 total (3 passed) (1 skipped)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency resolution and management

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant